# Project 1: LED Blink ### **1.説明** ![image-20250508161034535](media/A6.png) 初心者や愛好家向けに、LED Blinkは基本的なプログラムです。LEDはlight emitting diodes(発光ダイオード)の略で、Ga、As、P、Nなどの化学化合物で構成されています。 テストコードの遅延時間を変えることで、LEDはさまざまな色で点滅できます。制御時には、GNDとVCCに電源を入れ、S端子が高レベルの場合はLEDが点灯し、そうでなければ消灯します。 ### **2.仕様** - 制御インターフェース:デジタルポート - 動作電圧:DC 3.3-5V - ピン間隔:2.54mm - LED表示色:赤 ![image-20250508161015086](media/A7.png) ### **3.コンポーネント** | Development Board *1 | 8833 Motor Driver *1 | Red LED Module*1 | | :--------------------------------------: | :--------------------------------------: | :----------------------: | | ![img](media/A8.jpg) | ![img](media/A9.jpg) | ![img](media/A10.jpg) | | 3P Dupont Wire*1 | USB Cable*1 | | | ![img](media/A11.jpg) | ![img](media/A12.jpg) | | ### **4.配線図** ![image-20250508161123490](media/A13.png) 上図からわかるように、Keyestudio 8833 motor ShieldはKeyestudio 4.0開発ボードに重ねられています。 LEDモジュールのピンG、V、Sはそれぞれ拡張ボードのG、5V、D9に接続されています。 ### **5.テストコード** ```c //**************************************************************************** /* keyestudio 4wd BT Car lesson 1.1 Blink http://www.keyestudio.com */ void setup() { pinMode(9, OUTPUT);// デジタルピン9を出力として初期化 } void loop() // このループ関数は永遠に繰り返し実行される { digitalWrite(9, HIGH); // LEDを点灯(HIGHは電圧レベル) delay(1000); // 1秒待つ digitalWrite(9, LOW); // 電圧をLOWにしてLEDを消灯 delay(1000); // 1秒待つ } //**************************************************************************** ``` ### **6.テスト結果** コードをV4.0ボードに正常にアップロードした後、配線図に従って配線し、USBケーブルでコンピュータと接続してボードに電源を供給します。電源を入れると、D9に接続されたLEDが点灯と消灯を繰り返すのが見えます。 ### **7.コード説明** pinMode(9,OUTPUT) - この関数はピンをINPUTかOUTPUTかを指定します digitalWrite(9,HIGH) - ピンがOUTPUTの場合、HIGH(5V出力)またはLOW(0V出力)に設定できます ### **8.拡張練習** LEDの点滅に成功しました。次に、遅延時間を変更するとLEDにどのような変化が起きるか観察してみましょう。 ```c //**************************************************************************** /* keyestudio 4wd BT Car lesson 1.2 delay http://www.keyestudio.com */ void setup() { // デジタルピン9を出力として初期化 pinMode(9, OUTPUT); } // このループ関数は永遠に繰り返し実行される void loop() { digitalWrite(9, HIGH); // LEDを点灯(HIGHは電圧レベル) delay(100); // 0.1秒待つ digitalWrite(9, LOW); // 電圧をLOWにしてLEDを消灯 delay(100); // 0.1秒待つ } //***************************************************************** ``` テスト結果はLEDの点滅が速くなることを示しています。したがって、遅延時間はLEDの点滅周波数に影響を与えます。